import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.PriorityQueue;

public class Heap {
//PriorityQueue
    //1. 元素必须可以比较大小
    //2. 不能插入null
    //3. 默认是小根堆
    //4. 构造函数
        //1.PriorityQueue() 创建一个空的优先队列, 默认容量11
        //2.PriorityQueeu(int intinitialCapacity) 创建一个初始容量为intinitialCapacity的优先级队列
        //3.PriorityQueue(Collection<? extends E>) 用一个集合创建优先级队列
        //4.PriorityQueue(new Comparator) 实现Comparator接口, 然后重写compare方法
    public static void test1()
    {
        PriorityQueue<Integer> priorityQueue1 = new PriorityQueue<>();
        PriorityQueue<Integer> priorityQueue2 = new PriorityQueue<>(10);
        List<Integer> list = new ArrayList<>();
        list.add(10,0);
        PriorityQueue<Integer> priorityQueue3 = new PriorityQueue<>(list);
        PriorityQueue<Integer> priorityQueue4 = new PriorityQueue<>(new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o2 - o1;
            }
        });
    }
    //5.offer(e): 插入e, 成功返回true
    //6.peek(): 获取优先级最高的元素, 队列为空返回null
    //7.poll(): 移除有衔接最高的元素, 队列为空返回null
    //8.size(): 获取有效的元素的个数
    //9.clear(): 清空
    //10.isEmpty(): 检测是否为空
    public static void main(String[] args) {

    }
}
